OPC Data Client includes several controls dedicated to displaying and/or editing values and objects in OPC UA PubSub. They are displayed in this chapter. Note that dedicated controls are only made available for objects where the control provides additional configuration and programmatic features for the developer. For many other objects do not require that, you will use the AutomaticValueControl Class and OPC UA PubSub Control Pages to place the control for a specific object on your form.
All controls described in this section have their corresponding items (icons) in Visual Studio Toolbox. You can therefore drag-and-drop them from the Toolbox to the designer surface of your form.
The UAVersionTimeControl Class allows displaying and editing of OPC UA version times, which are dates/times expressed as integers according to specific rules. The OPC UA version time is used e.g. in OPC UA configuration version (UAConfigurationVersion Class), which is a structure that is used to describe version of configuration changes in the information published for an OPC UA PubSub dataset.
Following features of the control are available to you as a developer:
An example of the control in action is shown below.
The checkbox at the left allows the user to select whether the version is specified or not (an unspecified version time is represented by a zero value). The version time can be displayed or entered in local or UTC time, and the control provides a button that allows the user to select between them.
Sometimes, the version time is treated not as a "meaningful" date and time, but simply as a sequential numerical value. The control has a button that allows to switch the date/time display into a numeric display. When done so, the user can further select whether the value will be represented in decimal or hexadecimal.
The UAFieldDataDictionaryControl displays contents of UAStringDataSetFieldDataDictionary, i.e. a dictionary of OPC UA dataset field data objects, keyed by the field name. This is the actual "data" of OPC UA PubSet dataset. Main part of the control is a list view, where each row represents a field in the dataset. The list view has columns for field names, values, timestamps, and status code associated with the field data. An example of the control in action is shown below.
This control is always read-only, i.e. the interactive user cannot modify the data (although he/she can influence how the data is displayed).
Following features of the control are available to you as a developer:
The interactive user of the control can:
The control shows statistics of the fields it displays (sorted by their Good/Uncertain/Bad status) at the bottom. It also colorizes the values and the statistics, using orange color for warnings (Uncertain status) and red color for errors (Bad status).
The UADataSetHeaderControl Class displays information from the UADataSetHeader Class (header information of an OPC UA PubSub message). An example of the control in action is shown below.
This control is always read-only, i.e. the interactive user cannot modify the data.
Following features of the control are available to you as a developer:
The interactive user of the control can display supplementary information to the displayed fields by hovering over them. For example, hovering over the Publisher Id, Writer group Id or Dataset writer Id shows their values in both decimal and hexadecimal formats. Hovering over timestamps (in configuration version) shows the times in both local and UTC formats, and also shows the numerical value of the configuration version.
The UADataSetDataControl Class displays information from the UADataSetData Class (the OPC UA PubSub dataset, consisting of the dataset header, and the dataset fields). The control combines together the UADataSetHeaderControl Class and the UAFieldDataDictionaryControl Class. An example of the control in action is shown below.
This control is always read-only, i.e. the interactive user cannot modify the data (although he/she can influence how the data is displayed).
Following features of the control are available to you as a developer:
The features available to the interactive user are a combination of the features provided by the UADataSetHeaderControl and the UAFieldDataDictionaryControl.